{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Marly Integration with Langgraph\n",
    "This notebook example shows how Marly can be used together with popular AI agent framework like Langchain to perform tasks. Langchain multi-agent library Langgraph does a good job in orchestrating collaboration among agents. In the below example workflow, two Agents: pdf_processor and chart_generator convert table data from a 10k pdf report into a line chart. Users only need to instruct the agents what table schemas need to be extracted from which pdf file. \n",
    "\n",
    "The pdf_generator is using Marly as a tool to perform high quality data extraction based on pdf document and schema.\n",
    "\n",
    "The resulting graph will be something like below diagram:\n",
    "\n",
    "\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "![Alt text](./diagram.jpeg)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Pre-Setup"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Install Dependencies"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 33,
   "metadata": {},
   "outputs": [],
   "source": [
    "%%capture --no-stderr\n",
    "%pip install -U marly langchain langchain_openai langsmith pandas langchain_experimental matplotlib langgraph langchain_core PyPDF2"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Setup Openai API Key"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 34,
   "metadata": {},
   "outputs": [],
   "source": [
    "import getpass\n",
    "import os\n",
    "\n",
    "\n",
    "def _set_if_undefined(var: str):\n",
    "    if not os.environ.get(var):\n",
    "        os.environ[var] = getpass.getpass(f\"Please provide your {var}\")\n",
    "\n",
    "\n",
    "_set_if_undefined(\"OPENAI_API_KEY\")"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Build Agentic Flow"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Define Agent"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 199,
   "metadata": {},
   "outputs": [],
   "source": [
    "from langchain_core.messages import (\n",
    "    BaseMessage,\n",
    "    HumanMessage,\n",
    "    ToolMessage,\n",
    ")\n",
    "from langchain_core.prompts import ChatPromptTemplate, MessagesPlaceholder\n",
    "\n",
    "from langgraph.graph import END, StateGraph, START\n",
    "\n",
    "\n",
    "def create_agent(llm, tools, system_message: str):\n",
    "    \"\"\"Create an agent.\"\"\"\n",
    "    prompt = ChatPromptTemplate.from_messages(\n",
    "        [\n",
    "            (\n",
    "                \"system\",\n",
    "                \"You are a helpful AI assistant, collaborating with other assistants.\"\n",
    "                \" Use the provided tools to progress towards answering the question.\"\n",
    "                \" If you are unable to fully answer, that's OK, another assistant with different tools \"\n",
    "                \" will help where you left off. Execute what you can to make progress.\"\n",
    "                \" If you or any of the other assistants have the final answer or deliverable,\"\n",
    "                \" prefix your response with FINAL ANSWER so the team knows to stop.\"\n",
    "                \" You have access to the following tools: {tool_names}.\\n{system_message}\",\n",
    "            ),\n",
    "            MessagesPlaceholder(variable_name=\"messages\"),\n",
    "        ]\n",
    "    )\n",
    "    prompt = prompt.partial(system_message=system_message)\n",
    "    prompt = prompt.partial(tool_names=\", \".join([tool.name for tool in tools]))\n",
    "    return prompt | llm.bind_tools(tools)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Define Tools"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 200,
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "/opt/homebrew/lib/python3.12/site-packages/pydantic/_internal/_fields.py:172: UserWarning: Field name \"schema\" in \"ProcessPdfTool\" shadows an attribute in parent \"ValidatedFunction.create_model.<locals>.DecoratorBaseModel\"\n",
      "  warnings.warn(\n",
      "/opt/homebrew/lib/python3.12/site-packages/pydantic/_internal/_fields.py:172: UserWarning: Field name \"schema\" in \"process_pdf_tool\" shadows an attribute in parent \"BaseModel\"\n",
      "  warnings.warn(\n"
     ]
    }
   ],
   "source": [
    "from typing import Annotated\n",
    "from langchain_core.tools import tool\n",
    "from langchain_experimental.utilities import PythonREPL\n",
    "from dotenv import load_dotenv\n",
    "import os\n",
    "import logging\n",
    "import base64\n",
    "import zlib\n",
    "import json\n",
    "\n",
    "import marly\n",
    "from marly import Marly\n",
    "\n",
    "load_dotenv()\n",
    "client = Marly(\n",
    "    base_url=\"http://localhost:8100\",\n",
    "    max_retries=10,\n",
    ")\n",
    "\n",
    "PDF_FILE_PATH = \"./lacers_reduced.pdf\"\n",
    "\n",
    "# Define schema for Marly, table column name and a breif description of the column\n",
    "SCHEMA = {\n",
    "        \"Firm\": \"The name of the firm\",\n",
    "        \"Number of Funds\": \"The number of funds managed by the firm\",\n",
    "        \"Commitment\": \"The commitment amount in millions of dollars\",\n",
    "        \"Percent of Total Comm\": \"The percentage of total commitment\",\n",
    "        \"Exposure (FMV + Unfunded)\": \"The exposure including fair market value and unfunded commitments in millions of dollars\",\n",
    "        \"Percent of Total Exposure\": \"The percentage of total exposure\",\n",
    "        \"TVPI\": \"Total Value to Paid-In multiple\",\n",
    "        \"Net IRR\": \"Net Internal Rate of Return as a percentage\"\n",
    "    }\n",
    "\n",
    "def read_and_encode_pdf(file_path):\n",
    "    with open(file_path, \"rb\") as file:\n",
    "        pdf_content = base64.b64encode(zlib.compress(file.read())).decode('utf-8')\n",
    "    logging.debug(f\"{file_path} read and encoded\")\n",
    "    return pdf_content\n",
    "\n",
    "# Define the tool to process the pdf file\n",
    "@tool\n",
    "def process_pdf_tool(pdf_file_path: str, schema: str) -> list[dict]:\n",
    "    \"\"\"Use this to process the pdf file. \"\"\"\n",
    "    pipeline_response_model = None\n",
    "    try:\n",
    "        pipeline_response_model = client.pipelines.create(\n",
    "            api_key=os.environ.get(\"OPENAI_API_KEY\"),\n",
    "            provider_model_name=\"gpt-4o\",\n",
    "            provider_type=\"openai\",\n",
    "            workloads=[\n",
    "                {\n",
    "                    \"pdf_stream\": read_and_encode_pdf(pdf_file_path),\n",
    "                    \"schemas\": [schema]\n",
    "                }\n",
    "            ]\n",
    "        )\n",
    "    except marly.APIConnectionError as e:\n",
    "        print(\"The server could not be reached\")\n",
    "        print(e.__cause__)  # an underlying Exception, likely raised within httpx.\n",
    "    except marly.RateLimitError as e:\n",
    "        print(\"A 429 status code was received; we should back off a bit.\")\n",
    "    except marly.APIStatusError as e:\n",
    "        print(\"Another non-200-range status code was received\")\n",
    "        print(e.status_code)\n",
    "        print(e.response)\n",
    "    \n",
    "    return client.pipelines.retrieve(pipeline_response_model.task_id).results\n",
    "\n",
    "\n",
    "repl = PythonREPL()\n",
    "\n",
    "# Define the tool to execute python code\n",
    "@tool\n",
    "def python_repl(\n",
    "    code: Annotated[str, \"The python code to execute to generate your chart.\"],\n",
    "):\n",
    "    \"\"\"Use this to execute python code. \"\"\"\n",
    "    try:\n",
    "        result = repl.run(code)\n",
    "    except BaseException as e:\n",
    "        return f\"Failed to execute. Error: {repr(e)}\"\n",
    "    result_str = f\"Successfully executed:\\n```python\\n{code}\\n```\\nStdout: {result}\"\n",
    "    return (\n",
    "        result_str + \"\\n\\nIf you have completed all tasks, respond with FINAL ANSWER.\"\n",
    "    )"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Define State"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 201,
   "metadata": {},
   "outputs": [],
   "source": [
    "import operator\n",
    "from typing import Annotated, Sequence, TypedDict\n",
    "\n",
    "\n",
    "# This defines the object that is passed between each node\n",
    "# in the graph. We will create different nodes for each agent and tool\n",
    "class AgentState(TypedDict):\n",
    "    messages: Annotated[Sequence[BaseMessage], operator.add]\n",
    "    sender: str"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Define Agent Nodes"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 202,
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "/opt/homebrew/lib/python3.12/site-packages/pydantic/_internal/_fields.py:172: UserWarning: Field name \"schema\" in \"process_pdf_tool\" shadows an attribute in parent \"BaseModel\"\n",
      "  warnings.warn(\n"
     ]
    }
   ],
   "source": [
    "import functools\n",
    "\n",
    "from langchain_core.messages import AIMessage\n",
    "from langchain_openai import ChatOpenAI\n",
    "\n",
    "llm = ChatOpenAI(model=\"gpt-4o\")\n",
    "\n",
    "# Helper function to create a node for a given agent\n",
    "def agent_node(state, agent, name):\n",
    "    result = agent.invoke(state)\n",
    "    # We convert the agent output into a format that is suitable to append to the global state\n",
    "    if isinstance(result, ToolMessage):\n",
    "        pass\n",
    "    else:\n",
    "        result = AIMessage(**result.dict(exclude={\"type\", \"name\"}), name=name)\n",
    "    return {\n",
    "        \"messages\": [result],\n",
    "        \"sender\": name,\n",
    "    }\n",
    "\n",
    "\n",
    "pdf_processor = create_agent(\n",
    "    llm,\n",
    "    [process_pdf_tool],\n",
    "    system_message=\"You should process the PDF and return the results.\",\n",
    ")\n",
    "extraction_node = functools.partial(agent_node, agent=pdf_processor, name=\"pdf_processor\")\n",
    "\n",
    "\n",
    "chart_generator = create_agent(\n",
    "    llm,\n",
    "    [python_repl],\n",
    "    system_message=\"Any charts you display will be visible by the user.\",\n",
    ")\n",
    "chart_node = functools.partial(agent_node, agent=chart_generator, name=\"chart_generator\")"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Define Tool Node"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 203,
   "metadata": {},
   "outputs": [],
   "source": [
    "from langgraph.prebuilt import ToolNode\n",
    "\n",
    "tools = [process_pdf_tool, python_repl]\n",
    "tool_node = ToolNode(tools)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Define Edge Logic"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 204,
   "metadata": {},
   "outputs": [],
   "source": [
    "from typing import Literal\n",
    "\n",
    "\n",
    "def router(state) -> Literal[\"call_tool\", \"__end__\", \"continue\"]:\n",
    "    # This is the router\n",
    "    messages = state[\"messages\"]\n",
    "    last_message = messages[-1]\n",
    "    if last_message.tool_calls:\n",
    "        # The previous agent is invoking a tool\n",
    "        return \"call_tool\"\n",
    "    if \"FINAL ANSWER\" in last_message.content:\n",
    "        # Any agent decided the work is done\n",
    "        if state[\"sender\"] == \"pdf_processor\":\n",
    "            return \"continue\"\n",
    "        return \"__end__\"\n",
    "    return \"continue\""
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Define the Graph"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 205,
   "metadata": {},
   "outputs": [],
   "source": [
    "workflow = StateGraph(AgentState)\n",
    "\n",
    "workflow.add_node(\"pdf_processor\", extraction_node)\n",
    "workflow.add_node(\"chart_generator\", chart_node)\n",
    "workflow.add_node(\"call_tool\", tool_node)\n",
    "\n",
    "workflow.add_conditional_edges(\n",
    "    \"pdf_processor\",\n",
    "    router,\n",
    "    {\"continue\": \"chart_generator\", \"call_tool\": \"call_tool\", \"__end__\": END},\n",
    ")\n",
    "workflow.add_conditional_edges(\n",
    "    \"chart_generator\",\n",
    "    router,\n",
    "    {\"continue\": \"pdf_processor\", \"call_tool\": \"call_tool\", \"__end__\": END},\n",
    ")\n",
    "\n",
    "workflow.add_conditional_edges(\n",
    "    \"call_tool\",\n",
    "    lambda x: x[\"sender\"],\n",
    "    {\n",
    "        \"pdf_processor\": \"pdf_processor\",\n",
    "        \"chart_generator\": \"chart_generator\",\n",
    "    },\n",
    ")\n",
    "workflow.add_edge(START, \"pdf_processor\")\n",
    "graph = workflow.compile()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 206,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/jpeg": "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",
      "text/plain": [
       "<IPython.core.display.Image object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "from IPython.display import Image, display\n",
    "\n",
    "try:\n",
    "    display(Image(graph.get_graph(xray=True).draw_mermaid_png()))\n",
    "except Exception:\n",
    "    # This requires some extra dependencies and is optional\n",
    "    pass"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 207,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "{'pdf_processor': {'messages': [AIMessage(content='', additional_kwargs={'tool_calls': [{'id': 'call_DoaZN3Vn3CPi0nPDOBp6MfSu', 'function': {'arguments': '{\"pdf_file_path\":\"../example_scripts/lacers_reduced.pdf\",\"schema\":\"{\\\\\"Firm\\\\\": \\\\\"The name of the firm\\\\\", \\\\\"Number of Funds\\\\\": \\\\\"The number of funds managed by the firm\\\\\", \\\\\"Commitment\\\\\": \\\\\"The commitment amount in millions of dollars\\\\\", \\\\\"Percent of Total Comm\\\\\": \\\\\"The percentage of total commitment\\\\\", \\\\\"Exposure (FMV + Unfunded)\\\\\": \\\\\"The exposure including fair market value and unfunded commitments in millions of dollars\\\\\", \\\\\"Percent of Total Exposure\\\\\": \\\\\"The percentage of total exposure\\\\\", \\\\\"TVPI\\\\\": \\\\\"Total Value to Paid-In multiple\\\\\", \\\\\"Net IRR\\\\\": \\\\\"Net Internal Rate of Return as a percentage\\\\\"}\"}', 'name': 'process_pdf_tool'}, 'type': 'function'}], 'refusal': None}, response_metadata={'token_usage': {'completion_tokens': 147, 'prompt_tokens': 327, 'total_tokens': 474, 'completion_tokens_details': {'reasoning_tokens': 0}}, 'model_name': 'gpt-4o-2024-05-13', 'system_fingerprint': 'fp_3537616b13', 'finish_reason': 'tool_calls', 'logprobs': None}, name='pdf_processor', id='run-85e26a30-5dbd-400f-a1bd-26b0c26529ac-0', tool_calls=[{'name': 'process_pdf_tool', 'args': {'pdf_file_path': '../example_scripts/lacers_reduced.pdf', 'schema': '{\"Firm\": \"The name of the firm\", \"Number of Funds\": \"The number of funds managed by the firm\", \"Commitment\": \"The commitment amount in millions of dollars\", \"Percent of Total Comm\": \"The percentage of total commitment\", \"Exposure (FMV + Unfunded)\": \"The exposure including fair market value and unfunded commitments in millions of dollars\", \"Percent of Total Exposure\": \"The percentage of total exposure\", \"TVPI\": \"Total Value to Paid-In multiple\", \"Net IRR\": \"Net Internal Rate of Return as a percentage\"}'}, 'id': 'call_DoaZN3Vn3CPi0nPDOBp6MfSu', 'type': 'tool_call'}], usage_metadata={'input_tokens': 327, 'output_tokens': 147, 'total_tokens': 474})], 'sender': 'pdf_processor'}}\n",
      "----\n",
      "{'call_tool': {'messages': [ToolMessage(content='[]', name='process_pdf_tool', tool_call_id='call_DoaZN3Vn3CPi0nPDOBp6MfSu')]}}\n",
      "----\n",
      "{'pdf_processor': {'messages': [AIMessage(content=\"It appears that the PDF processing did not return any results. This could be due to several reasons, such as the PDF not containing the relevant data or the data being in a format that is difficult to extract. \\n\\nLet's try a different approach. I will attempt to reprocess the PDF. If this still doesn't work, we might need to check the PDF's content manually or use another method.\", additional_kwargs={'tool_calls': [{'id': 'call_OC9oPgeyA8EsjXj0CpVUF3JX', 'function': {'arguments': '{\"pdf_file_path\":\"../example_scripts/lacers_reduced.pdf\",\"schema\":\"{\\\\\"Firm\\\\\": \\\\\"The name of the firm\\\\\", \\\\\"Number of Funds\\\\\": \\\\\"The number of funds managed by the firm\\\\\", \\\\\"Commitment\\\\\": \\\\\"The commitment amount in millions of dollars\\\\\", \\\\\"Percent of Total Comm\\\\\": \\\\\"The percentage of total commitment\\\\\", \\\\\"Exposure (FMV + Unfunded)\\\\\": \\\\\"The exposure including fair market value and unfunded commitments in millions of dollars\\\\\", \\\\\"Percent of Total Exposure\\\\\": \\\\\"The percentage of total exposure\\\\\", \\\\\"TVPI\\\\\": \\\\\"Total Value to Paid-In multiple\\\\\", \\\\\"Net IRR\\\\\": \\\\\"Net Internal Rate of Return as a percentage\\\\\"}\"}', 'name': 'process_pdf_tool'}, 'type': 'function'}], 'refusal': None}, response_metadata={'token_usage': {'completion_tokens': 227, 'prompt_tokens': 487, 'total_tokens': 714, 'completion_tokens_details': {'reasoning_tokens': 0}}, 'model_name': 'gpt-4o-2024-05-13', 'system_fingerprint': 'fp_3537616b13', 'finish_reason': 'tool_calls', 'logprobs': None}, name='pdf_processor', id='run-b0afd362-680a-4c00-a92d-3014bd090436-0', tool_calls=[{'name': 'process_pdf_tool', 'args': {'pdf_file_path': '../example_scripts/lacers_reduced.pdf', 'schema': '{\"Firm\": \"The name of the firm\", \"Number of Funds\": \"The number of funds managed by the firm\", \"Commitment\": \"The commitment amount in millions of dollars\", \"Percent of Total Comm\": \"The percentage of total commitment\", \"Exposure (FMV + Unfunded)\": \"The exposure including fair market value and unfunded commitments in millions of dollars\", \"Percent of Total Exposure\": \"The percentage of total exposure\", \"TVPI\": \"Total Value to Paid-In multiple\", \"Net IRR\": \"Net Internal Rate of Return as a percentage\"}'}, 'id': 'call_OC9oPgeyA8EsjXj0CpVUF3JX', 'type': 'tool_call'}], usage_metadata={'input_tokens': 487, 'output_tokens': 227, 'total_tokens': 714})], 'sender': 'pdf_processor'}}\n",
      "----\n",
      "{'call_tool': {'messages': [ToolMessage(content='[]', name='process_pdf_tool', tool_call_id='call_OC9oPgeyA8EsjXj0CpVUF3JX')]}}\n",
      "----\n",
      "{'pdf_processor': {'messages': [AIMessage(content='It seems that the PDF processing tool is unable to extract the required data from the provided PDF. This might be due to the specific structure or format of the PDF, which the tool is not able to handle correctly.\\n\\nTo proceed, I recommend manually reviewing the PDF to understand its structure and content. If you can provide specific details or images of the tables or sections containing the required data, that would help in extracting the information accurately. Alternatively, you can try using a different PDF processing tool or method that might be better suited for this particular document.\\n\\nWould you like to proceed with a different approach or provide additional details?', additional_kwargs={'refusal': None}, response_metadata={'token_usage': {'completion_tokens': 124, 'prompt_tokens': 733, 'total_tokens': 857, 'completion_tokens_details': {'reasoning_tokens': 0}}, 'model_name': 'gpt-4o-2024-05-13', 'system_fingerprint': 'fp_3537616b13', 'finish_reason': 'stop', 'logprobs': None}, name='pdf_processor', id='run-7bedb195-4ff4-4090-acfb-b833d3d66666-0', usage_metadata={'input_tokens': 733, 'output_tokens': 124, 'total_tokens': 857})], 'sender': 'pdf_processor'}}\n",
      "----\n",
      "{'chart_generator': {'messages': [AIMessage(content=\"Let's manually inspect the PDF to identify the structure and extract the relevant data. If you have access to the PDF, please review the relevant sections and provide the data or images of the tables you want to extract. If not, let me know how you'd like to proceed or if you have any alternative methods in mind.\", additional_kwargs={'refusal': None}, response_metadata={'token_usage': {'completion_tokens': 64, 'prompt_tokens': 868, 'total_tokens': 932, 'completion_tokens_details': {'reasoning_tokens': 0}}, 'model_name': 'gpt-4o-2024-05-13', 'system_fingerprint': 'fp_e375328146', 'finish_reason': 'stop', 'logprobs': None}, name='chart_generator', id='run-99bf6739-3fef-417f-8fdb-a4531b85bab0-0', usage_metadata={'input_tokens': 868, 'output_tokens': 64, 'total_tokens': 932})], 'sender': 'chart_generator'}}\n",
      "----\n",
      "{'pdf_processor': {'messages': [AIMessage(content=\"Since the PDF processing attempt did not yield results, I'll need to manually inspect the PDF to understand its structure and extract the data.\\n\\nPlease upload the PDF file or provide additional details about the sections containing the relevant data. This will help in accurately extracting the information based on the specified schema.\", additional_kwargs={'refusal': None}, response_metadata={'token_usage': {'completion_tokens': 58, 'prompt_tokens': 933, 'total_tokens': 991, 'completion_tokens_details': {'reasoning_tokens': 0}}, 'model_name': 'gpt-4o-2024-05-13', 'system_fingerprint': 'fp_3537616b13', 'finish_reason': 'stop', 'logprobs': None}, name='pdf_processor', id='run-2e04480b-60e7-456e-8b04-05c87a08d419-0', usage_metadata={'input_tokens': 933, 'output_tokens': 58, 'total_tokens': 991})], 'sender': 'pdf_processor'}}\n",
      "----\n",
      "{'chart_generator': {'messages': [AIMessage(content='Since the automated attempt to extract the data from the PDF was unsuccessful, could you please manually provide the data from the PDF based on the schema? Here is the schema for reference:\\n\\n- **Firm**: The name of the firm\\n- **Number of Funds**: The number of funds managed by the firm\\n- **Commitment**: The commitment amount in millions of dollars\\n- **Percent of Total Comm**: The percentage of total commitment\\n- **Exposure (FMV + Unfunded)**: The exposure including fair market value and unfunded commitments in millions of dollars\\n- **Percent of Total Exposure**: The percentage of total exposure\\n- **TVPI**: Total Value to Paid-In multiple\\n- **Net IRR**: Net Internal Rate of Return as a percentage\\n\\nOnce you provide this data, I will proceed to create the line graph for you.', additional_kwargs={'refusal': None}, response_metadata={'token_usage': {'completion_tokens': 179, 'prompt_tokens': 1002, 'total_tokens': 1181, 'completion_tokens_details': {'reasoning_tokens': 0}}, 'model_name': 'gpt-4o-2024-05-13', 'system_fingerprint': 'fp_e375328146', 'finish_reason': 'stop', 'logprobs': None}, name='chart_generator', id='run-4cace1c4-3189-42ca-91b0-587eab297985-0', usage_metadata={'input_tokens': 1002, 'output_tokens': 179, 'total_tokens': 1181})], 'sender': 'chart_generator'}}\n",
      "----\n",
      "{'pdf_processor': {'messages': [AIMessage(content=\"Since the automated extraction of data from the PDF didn't work, I recommend manually extracting the data from the PDF. Here’s how you can proceed:\\n\\n1. Open the PDF file and locate the sections or tables that contain the relevant data.\\n2. Manually write down the data according to the schema provided:\\n    - **Firm**: The name of the firm\\n    - **Number of Funds**: The number of funds managed by the firm\\n    - **Commitment**: The commitment amount in millions of dollars\\n    - **Percent of Total Comm**: The percentage of total commitment\\n    - **Exposure (FMV + Unfunded)**: The exposure including fair market value and unfunded commitments in millions of dollars\\n    - **Percent of Total Exposure**: The percentage of total exposure\\n    - **TVPI**: Total Value to Paid-In multiple\\n    - **Net IRR**: Net Internal Rate of Return as a percentage\\n\\n3. Provide the extracted data here.\\n\\nOnce you provide the data, we can proceed to create the line graph based on the extracted data.\", additional_kwargs={'refusal': None}, response_metadata={'token_usage': {'completion_tokens': 223, 'prompt_tokens': 1182, 'total_tokens': 1405, 'completion_tokens_details': {'reasoning_tokens': 0}}, 'model_name': 'gpt-4o-2024-05-13', 'system_fingerprint': 'fp_3537616b13', 'finish_reason': 'stop', 'logprobs': None}, name='pdf_processor', id='run-c52fbe18-f0fa-4b52-8829-20030786a3fa-0', usage_metadata={'input_tokens': 1182, 'output_tokens': 223, 'total_tokens': 1405})], 'sender': 'pdf_processor'}}\n",
      "----\n",
      "{'chart_generator': {'messages': [AIMessage(content='It seems automated extraction was unsuccessful. Please provide the data from the PDF in the specified schema. Here is the schema for reference:\\n\\n- **Firm**: The name of the firm\\n- **Number of Funds**: The number of funds managed by the firm\\n- **Commitment**: The commitment amount in millions of dollars\\n- **Percent of Total Comm**: The percentage of total commitment\\n- **Exposure (FMV + Unfunded)**: The exposure including fair market value and unfunded commitments in millions of dollars\\n- **Percent of Total Exposure**: The percentage of total exposure\\n- **TVPI**: Total Value to Paid-In multiple\\n- **Net IRR**: Net Internal Rate of Return as a percentage\\n\\nOnce you provide this data, I will proceed to create the line graph for you.', additional_kwargs={'refusal': None}, response_metadata={'token_usage': {'completion_tokens': 169, 'prompt_tokens': 1416, 'total_tokens': 1585, 'completion_tokens_details': {'reasoning_tokens': 0}}, 'model_name': 'gpt-4o-2024-05-13', 'system_fingerprint': 'fp_e375328146', 'finish_reason': 'stop', 'logprobs': None}, name='chart_generator', id='run-96a87a9d-3acb-4516-ba9f-66e8dd29d485-0', usage_metadata={'input_tokens': 1416, 'output_tokens': 169, 'total_tokens': 1585})], 'sender': 'chart_generator'}}\n",
      "----\n",
      "{'pdf_processor': {'messages': [AIMessage(content='It seems that the PDF processing tool was unable to extract the required data. To proceed, please provide the data manually based on the specified schema. Here is the schema for reference:\\n\\n- **Firm**: The name of the firm\\n- **Number of Funds**: The number of funds managed by the firm\\n- **Commitment**: The commitment amount in millions of dollars\\n- **Percent of Total Comm**: The percentage of total commitment\\n- **Exposure (FMV + Unfunded)**: The exposure including fair market value and unfunded commitments in millions of dollars\\n- **Percent of Total Exposure**: The percentage of total exposure\\n- **TVPI**: Total Value to Paid-In multiple\\n- **Net IRR**: Net Internal Rate of Return as a percentage\\n\\nOnce you provide the data, I can generate the line graph for you.', additional_kwargs={'refusal': None}, response_metadata={'token_usage': {'completion_tokens': 177, 'prompt_tokens': 1586, 'total_tokens': 1763, 'completion_tokens_details': {'reasoning_tokens': 0}}, 'model_name': 'gpt-4o-2024-05-13', 'system_fingerprint': 'fp_3537616b13', 'finish_reason': 'stop', 'logprobs': None}, name='pdf_processor', id='run-aa6f1464-bf74-445c-9422-3db18e62d751-0', usage_metadata={'input_tokens': 1586, 'output_tokens': 177, 'total_tokens': 1763})], 'sender': 'pdf_processor'}}\n",
      "----\n",
      "{'chart_generator': {'messages': [AIMessage(content=\"It seems that the automated extraction process did not yield results. We can proceed to manually extract the data from the PDF based on the provided schema. Could you please upload the PDF or share the relevant data directly here?\\n\\nHere's the schema for reference:\\n- **Firm**: The name of the firm\\n- **Number of Funds**: The number of funds managed by the firm\\n- **Commitment**: The commitment amount in millions of dollars\\n- **Percent of Total Comm**: The percentage of total commitment\\n- **Exposure (FMV + Unfunded)**: The exposure including fair market value and unfunded commitments in millions of dollars\\n- **Percent of Total Exposure**: The percentage of total exposure\\n- **TVPI**: Total Value to Paid-In multiple\\n- **Net IRR**: Net Internal Rate of Return as a percentage\\n\\nOnce we have the data, I can proceed with generating the line graph for you.\", additional_kwargs={'refusal': None}, response_metadata={'token_usage': {'completion_tokens': 192, 'prompt_tokens': 1774, 'total_tokens': 1966, 'completion_tokens_details': {'reasoning_tokens': 0}}, 'model_name': 'gpt-4o-2024-05-13', 'system_fingerprint': 'fp_e375328146', 'finish_reason': 'stop', 'logprobs': None}, name='chart_generator', id='run-1357d469-73b0-4b0a-9da0-690134849772-0', usage_metadata={'input_tokens': 1774, 'output_tokens': 192, 'total_tokens': 1966})], 'sender': 'chart_generator'}}\n",
      "----\n",
      "{'pdf_processor': {'messages': [AIMessage(content=\"It appears that the PDF processing tool was unable to extract the desired data. To move forward, I'll need to manually review the PDF and extract the data myself. Please upload the PDF file or provide further instructions on how to proceed.\", additional_kwargs={'refusal': None}, response_metadata={'token_usage': {'completion_tokens': 47, 'prompt_tokens': 1967, 'total_tokens': 2014, 'completion_tokens_details': {'reasoning_tokens': 0}}, 'model_name': 'gpt-4o-2024-05-13', 'system_fingerprint': 'fp_3537616b13', 'finish_reason': 'stop', 'logprobs': None}, name='pdf_processor', id='run-a3c2f289-6235-4359-8cd9-7df777219c2a-0', usage_metadata={'input_tokens': 1967, 'output_tokens': 47, 'total_tokens': 2014})], 'sender': 'pdf_processor'}}\n",
      "----\n",
      "{'chart_generator': {'messages': [AIMessage(content=\"It appears the automated extraction was unsuccessful. Could you please upload the PDF or provide the data manually? Here's the schema for reference:\\n\\n- **Firm**: The name of the firm\\n- **Number of Funds**: The number of funds managed by the firm\\n- **Commitment**: The commitment amount in millions of dollars\\n- **Percent of Total Comm**: The percentage of total commitment\\n- **Exposure (FMV + Unfunded)**: The exposure including fair market value and unfunded commitments in millions of dollars\\n- **Percent of Total Exposure**: The percentage of total exposure\\n- **TVPI**: Total Value to Paid-In multiple\\n- **Net IRR**: Net Internal Rate of Return as a percentage\\n\\nOnce we have this data, we can proceed to generate the line graph.\", additional_kwargs={'refusal': None}, response_metadata={'token_usage': {'completion_tokens': 167, 'prompt_tokens': 2025, 'total_tokens': 2192, 'completion_tokens_details': {'reasoning_tokens': 0}}, 'model_name': 'gpt-4o-2024-05-13', 'system_fingerprint': 'fp_e375328146', 'finish_reason': 'stop', 'logprobs': None}, name='chart_generator', id='run-33b0fdd1-b20b-4d45-ae09-1200368837b5-0', usage_metadata={'input_tokens': 2025, 'output_tokens': 167, 'total_tokens': 2192})], 'sender': 'chart_generator'}}\n",
      "----\n",
      "{'pdf_processor': {'messages': [AIMessage(content='', additional_kwargs={'tool_calls': [{'id': 'call_HQeXhj1JMGajpEl6X5linQeB', 'function': {'arguments': '{\"pdf_file_path\": \"../example_scripts/lacers_reduced.pdf\", \"schema\": \"{\\\\\"Firm\\\\\": \\\\\"The name of the firm\\\\\", \\\\\"Number of Funds\\\\\": \\\\\"The number of funds managed by the firm\\\\\", \\\\\"Commitment\\\\\": \\\\\"The commitment amount in millions of dollars\\\\\", \\\\\"Percent of Total Comm\\\\\": \\\\\"The percentage of total commitment\\\\\", \\\\\"Exposure (FMV + Unfunded)\\\\\": \\\\\"The exposure including fair market value and unfunded commitments in millions of dollars\\\\\", \\\\\"Percent of Total Exposure\\\\\": \\\\\"The percentage of total exposure\\\\\", \\\\\"TVPI\\\\\": \\\\\"Total Value to Paid-In multiple\\\\\", \\\\\"Net IRR\\\\\": \\\\\"Net Internal Rate of Return as a percentage\\\\\"}\"}', 'name': 'process_pdf_tool'}, 'type': 'function'}, {'id': 'call_FZpirKFlzd163XC7x9vVq146', 'function': {'arguments': '{\"pdf_file_path\": \"../example_scripts/lacers_reduced.pdf\", \"schema\": \"{\\\\\"Firm\\\\\": \\\\\"The name of the firm\\\\\", \\\\\"Number of Funds\\\\\": \\\\\"The number of funds managed by the firm\\\\\", \\\\\"Commitment\\\\\": \\\\\"The commitment amount in millions of dollars\\\\\", \\\\\"Percent of Total Comm\\\\\": \\\\\"The percentage of total commitment\\\\\", \\\\\"Exposure (FMV + Unfunded)\\\\\": \\\\\"The exposure including fair market value and unfunded commitments in millions of dollars\\\\\", \\\\\"Percent of Total Exposure\\\\\": \\\\\"The percentage of total exposure\\\\\", \\\\\"TVPI\\\\\": \\\\\"Total Value to Paid-In multiple\\\\\", \\\\\"Net IRR\\\\\": \\\\\"Net Internal Rate of Return as a percentage\\\\\"}\"}', 'name': 'process_pdf_tool'}, 'type': 'function'}], 'refusal': None}, response_metadata={'token_usage': {'completion_tokens': 310, 'prompt_tokens': 2193, 'total_tokens': 2503, 'completion_tokens_details': {'reasoning_tokens': 0}}, 'model_name': 'gpt-4o-2024-05-13', 'system_fingerprint': 'fp_3537616b13', 'finish_reason': 'tool_calls', 'logprobs': None}, name='pdf_processor', id='run-250237c7-cfe5-43f7-a0e8-6dcbfb34c9bb-0', tool_calls=[{'name': 'process_pdf_tool', 'args': {'pdf_file_path': '../example_scripts/lacers_reduced.pdf', 'schema': '{\"Firm\": \"The name of the firm\", \"Number of Funds\": \"The number of funds managed by the firm\", \"Commitment\": \"The commitment amount in millions of dollars\", \"Percent of Total Comm\": \"The percentage of total commitment\", \"Exposure (FMV + Unfunded)\": \"The exposure including fair market value and unfunded commitments in millions of dollars\", \"Percent of Total Exposure\": \"The percentage of total exposure\", \"TVPI\": \"Total Value to Paid-In multiple\", \"Net IRR\": \"Net Internal Rate of Return as a percentage\"}'}, 'id': 'call_HQeXhj1JMGajpEl6X5linQeB', 'type': 'tool_call'}, {'name': 'process_pdf_tool', 'args': {'pdf_file_path': '../example_scripts/lacers_reduced.pdf', 'schema': '{\"Firm\": \"The name of the firm\", \"Number of Funds\": \"The number of funds managed by the firm\", \"Commitment\": \"The commitment amount in millions of dollars\", \"Percent of Total Comm\": \"The percentage of total commitment\", \"Exposure (FMV + Unfunded)\": \"The exposure including fair market value and unfunded commitments in millions of dollars\", \"Percent of Total Exposure\": \"The percentage of total exposure\", \"TVPI\": \"Total Value to Paid-In multiple\", \"Net IRR\": \"Net Internal Rate of Return as a percentage\"}'}, 'id': 'call_FZpirKFlzd163XC7x9vVq146', 'type': 'tool_call'}], usage_metadata={'input_tokens': 2193, 'output_tokens': 310, 'total_tokens': 2503})], 'sender': 'pdf_processor'}}\n",
      "----\n",
      "{'call_tool': {'messages': [ToolMessage(content='[Result(metrics={\\'schema_0\\': \\'{\\\\n  \"Firm\": [\"Vista Equity Partners\", \"ABRY Partners\", \"Advent International\", \"Thoma Bravo\", \"Platinum Equity\", \"Spark Management Partners\", \"New Enterprise Associates\", \"Technology Crossover Ventures\", \"EnCap Investments\", \"Hellman &amp; Friedman\"],\\\\n  \"Number of Funds\": [7, 6, 5, 5, 4, 6, 4, 5, 4, 5],\\\\n  \"Commitment\": [\"185,000,000\", \"145,000,000\", \"145,000,000\", \"90,000,000\", \"112,500,000\", \"93,750,000\", \"95,000,000\", \"104,500,000\", \"120,000,000\", \"100,463,972\"],\\\\n  \"Percent of Total Comm\": [\"3.6%\", \"2.8%\", \"2.8%\", \"1.8%\", \"2.2%\", \"1.8%\", \"1.9%\", \"2.0%\", \"2.3%\", \"2.0%\"],\\\\n  \"Exposure (FMV + Unfunded)\": [\"192,356,158\", \"146,947,169\", \"132,320,692\", \"119,164,173\", \"105,732,861\", \"104,048,457\", \"103,565,654\", \"100,481,558\", \"97,535,330\", \"91,816,195\"],\\\\n  \"Percent of Total Exposure\": [\"5.4%\", \"4.2%\", \"3.7%\", \"3.4%\", \"3.0%\", \"2.9%\", \"2.9%\", \"2.8%\", \"2.8%\", \"2.6%\"],\\\\n  \"TVPI\": [\"2.07x\", \"1.25x\", \"1.64x\", \"1.85x\", \"1.64x\", \"2.42x\", \"1.60x\", \"1.95x\", \"1.11x\", \"2.09x\"],\\\\n  \"Net IRR\": [\"22.2%\", \"9.6%\", \"16.0%\", \"24.7%\", \"28.5%\", \"27.4%\", \"15.7%\", \"14.9%\", \"4.5%\", \"20.3%\"]\\\\n}\\'}, schema_data={\\'Firm\\': \\'The name of the firm\\', \\'Number of Funds\\': \\'The number of funds managed by the firm\\', \\'Commitment\\': \\'The commitment amount in millions of dollars\\', \\'Percent of Total Comm\\': \\'The percentage of total commitment\\', \\'Exposure (FMV + Unfunded)\\': \\'The exposure including fair market value and unfunded commitments in millions of dollars\\', \\'Percent of Total Exposure\\': \\'The percentage of total exposure\\', \\'TVPI\\': \\'Total Value to Paid-In multiple\\', \\'Net IRR\\': \\'Net Internal Rate of Return as a percentage\\'}, schema_id=\\'schema_0\\')]', name='process_pdf_tool', tool_call_id='call_HQeXhj1JMGajpEl6X5linQeB'), ToolMessage(content='[Result(metrics={\\'schema_0\\': \\'{\\\\n  \"Firm\": [\"Vista Equity Partners\", \"ABRY Partners\", \"Advent International\", \"Thoma Bravo\", \"Platinum Equity\", \"Spark Management Partners\", \"New Enterprise Associates\", \"Technology Crossover Ventures\", \"EnCap Investments\", \"Hellman &amp; Friedman\"],\\\\n  \"Number of Funds\": [7, 6, 5, 5, 4, 6, 4, 5, 4, 5],\\\\n  \"Commitment\": [\"185,000,000\", \"145,000,000\", \"145,000,000\", \"90,000,000\", \"112,500,000\", \"93,750,000\", \"95,000,000\", \"104,500,000\", \"120,000,000\", \"100,463,972\"],\\\\n  \"Percent of Total Comm\": [\"3.6%\", \"2.8%\", \"2.8%\", \"1.8%\", \"2.2%\", \"1.8%\", \"1.9%\", \"2.0%\", \"2.3%\", \"2.0%\"],\\\\n  \"Exposure (FMV + Unfunded)\": [\"192,356,158\", \"146,947,169\", \"132,320,692\", \"119,164,173\", \"105,732,861\", \"104,048,457\", \"103,565,654\", \"100,481,558\", \"97,535,330\", \"91,816,195\"],\\\\n  \"Percent of Total Exposure\": [\"5.4%\", \"4.2%\", \"3.7%\", \"3.4%\", \"3.0%\", \"2.9%\", \"2.9%\", \"2.8%\", \"2.8%\", \"2.6%\"],\\\\n  \"TVPI\": [\"2.07x\", \"1.25x\", \"1.64x\", \"1.85x\", \"1.64x\", \"2.42x\", \"1.60x\", \"1.95x\", \"1.11x\", \"2.09x\"],\\\\n  \"Net IRR\": [\"22.2%\", \"9.6%\", \"16.0%\", \"24.7%\", \"28.5%\", \"27.4%\", \"15.7%\", \"14.9%\", \"4.5%\", \"20.3%\"]\\\\n}\\'}, schema_data={\\'Firm\\': \\'The name of the firm\\', \\'Number of Funds\\': \\'The number of funds managed by the firm\\', \\'Commitment\\': \\'The commitment amount in millions of dollars\\', \\'Percent of Total Comm\\': \\'The percentage of total commitment\\', \\'Exposure (FMV + Unfunded)\\': \\'The exposure including fair market value and unfunded commitments in millions of dollars\\', \\'Percent of Total Exposure\\': \\'The percentage of total exposure\\', \\'TVPI\\': \\'Total Value to Paid-In multiple\\', \\'Net IRR\\': \\'Net Internal Rate of Return as a percentage\\'}, schema_id=\\'schema_0\\')]', name='process_pdf_tool', tool_call_id='call_FZpirKFlzd163XC7x9vVq146')]}}\n",
      "----\n",
      "{'pdf_processor': {'messages': [AIMessage(content='The data has been successfully extracted from the PDF. Here is the extracted data according to the specified schema:\\n\\n- **Firm**: \\n  - Vista Equity Partners\\n  - ABRY Partners\\n  - Advent International\\n  - Thoma Bravo\\n  - Platinum Equity\\n  - Spark Management Partners\\n  - New Enterprise Associates\\n  - Technology Crossover Ventures\\n  - EnCap Investments\\n  - Hellman & Friedman\\n\\n- **Number of Funds**: \\n  - 7\\n  - 6\\n  - 5\\n  - 5\\n  - 4\\n  - 6\\n  - 4\\n  - 5\\n  - 4\\n  - 5\\n\\n- **Commitment**: \\n  - $185,000,000\\n  - $145,000,000\\n  - $145,000,000\\n  - $90,000,000\\n  - $112,500,000\\n  - $93,750,000\\n  - $95,000,000\\n  - $104,500,000\\n  - $120,000,000\\n  - $100,463,972\\n\\n- **Percent of Total Comm**: \\n  - 3.6%\\n  - 2.8%\\n  - 2.8%\\n  - 1.8%\\n  - 2.2%\\n  - 1.8%\\n  - 1.9%\\n  - 2.0%\\n  - 2.3%\\n  - 2.0%\\n\\n- **Exposure (FMV + Unfunded)**: \\n  - $192,356,158\\n  - $146,947,169\\n  - $132,320,692\\n  - $119,164,173\\n  - $105,732,861\\n  - $104,048,457\\n  - $103,565,654\\n  - $100,481,558\\n  - $97,535,330\\n  - $91,816,195\\n\\n- **Percent of Total Exposure**: \\n  - 5.4%\\n  - 4.2%\\n  - 3.7%\\n  - 3.4%\\n  - 3.0%\\n  - 2.9%\\n  - 2.9%\\n  - 2.8%\\n  - 2.8%\\n  - 2.6%\\n\\n- **TVPI**: \\n  - 2.07x\\n  - 1.25x\\n  - 1.64x\\n  - 1.85x\\n  - 1.64x\\n  - 2.42x\\n  - 1.60x\\n  - 1.95x\\n  - 1.11x\\n  - 2.09x\\n\\n- **Net IRR**: \\n  - 22.2%\\n  - 9.6%\\n  - 16.0%\\n  - 24.7%\\n  - 28.5%\\n  - 27.4%\\n  - 15.7%\\n  - 14.9%\\n  - 4.5%\\n  - 20.3%\\n\\nNow, I will pass this data to the chart generator to create the line graph.\\nFINAL ANSWER\\n\\nHere is the extracted data according to the specified schema:\\n\\n- **Firm**: \\n  - Vista Equity Partners\\n  - ABRY Partners\\n  - Advent International\\n  - Thoma Bravo\\n  - Platinum Equity\\n  - Spark Management Partners\\n  - New Enterprise Associates\\n  - Technology Crossover Ventures\\n  - EnCap Investments\\n  - Hellman & Friedman\\n\\n- **Number of Funds**: \\n  - 7\\n  - 6\\n  - 5\\n  - 5\\n  - 4\\n  - 6\\n  - 4\\n  - 5\\n  - 4\\n  - 5\\n\\n- **Commitment**: \\n  - $185,000,000\\n  - $145,000,000\\n  - $145,000,000\\n  - $90,000,000\\n  - $112,500,000\\n  - $93,750,000\\n  - $95,000,000\\n  - $104,500,000\\n  - $120,000,000\\n  - $100,463,972\\n\\n- **Percent of Total Comm**: \\n  - 3.6%\\n  - 2.8%\\n  - 2.8%\\n  - 1.8%\\n  - 2.2%\\n  - 1.8%\\n  - 1.9%\\n  - 2.0%\\n  - 2.3%\\n  - 2.0%\\n\\n- **Exposure (FMV + Unfunded)**: \\n  - $192,356,158\\n  - $146,947,169\\n  - $132,320,692\\n  - $119,164,173\\n  - $105,732,861\\n  - $104,048,457\\n  - $103,565,654\\n  - $100,481,558\\n  - $97,535,330\\n  - $91,816,195\\n\\n- **Percent of Total Exposure**: \\n  - 5.4%\\n  - 4.2%\\n  - 3.7%\\n  - 3.4%\\n  - 3.0%\\n  - 2.9%\\n  - 2.9%\\n  - 2.8%\\n  - 2.8%\\n  - 2.6%\\n\\n- **TVPI**: \\n  - 2.07x\\n  - 1.25x\\n  - 1.64x\\n  - 1.85x\\n  - 1.64x\\n  - 2.42x\\n  - 1.60x\\n  - 1.95x\\n  - 1.11x\\n  - 2.09x\\n\\n- **Net IRR**: \\n  - 22.2%\\n  - 9.6%\\n  - 16.0%\\n  - 24.7%\\n  - 28.5%\\n  - 27.4%\\n  - 15.7%\\n  - 14.9%\\n  - 4.5%\\n  - 20.3%\\n\\nPlease proceed with generating the line graph based on this data.', additional_kwargs={'refusal': None}, response_metadata={'token_usage': {'completion_tokens': 1361, 'prompt_tokens': 3887, 'total_tokens': 5248, 'completion_tokens_details': {'reasoning_tokens': 0}}, 'model_name': 'gpt-4o-2024-05-13', 'system_fingerprint': 'fp_3537616b13', 'finish_reason': 'stop', 'logprobs': None}, name='pdf_processor', id='run-bc4dc4bb-3898-4e3c-ab55-d0930b447649-0', usage_metadata={'input_tokens': 3887, 'output_tokens': 1361, 'total_tokens': 5248})], 'sender': 'pdf_processor'}}\n",
      "----\n"
     ]
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAABWMAAAKyCAYAAACwkcx0AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjkuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8hTgPZAAAACXBIWXMAAA9hAAAPYQGoP6dpAAEAAElEQVR4nOzdd3QV1f6/8eekkBB67713kCagggoKKoKiqKioNBuiol6vekWw61VRLNhBBLwWihUUFUQRRTpIkQ4KSO8QQnJ+f+RHvsRQkpDkQPK81pq15szZs+c9JzuWT/bZEwgGg0EkSZIkSZIkSZkqLNQBJEmSJEmSJCknsBgrSZIkSZIkSVnAYqwkSZIkSZIkZQGLsZIkSZIkSZKUBSzGSpIkSZIkSVIWsBgrSZIkSZIkSVnAYqwkSZIkSZIkZQGLsZIkSZIkSZKUBSzGSpIkSZIkSVIWsBgrSZJ0mpkyZQqBQIApU6aEOkq2U7FiRW688cZQx8gxAoEAffv2DXUMAoEAAwcODHUMSZKUA1iMlSRJ2d6KFSu4+eabqVy5MtHR0eTPn59WrVrx0ksvsX///lDHyxCjR4/mxRdfDHWMVFm/fj0DBw5k7ty5oY6SboFA4JjbLbfcEup4OsLhP14cbbv66qtDHU+SJOUwEaEOIEmSlJm+/PJLrrzySqKioujevTt169bl4MGD/PTTT9x33338/vvvvPnmm6GOmSbnnHMO+/fvJ1euXEnHRo8ezcKFC7nrrrtCFyyV1q9fz6BBg6hYsSINGzYMdZx0a9euHd27d09xvHr16iFIoxPp168fTZs2TXasYsWKAOzfv5+ICP/XSJIkZT7/i0OSJGVbq1at4uqrr6ZChQp8//33lCpVKum922+/neXLl/Pll1+GMGH6hIWFER0dHeoYOV716tW57rrrQh0jJBISEjh48OBpNQ7PPvtsrrjiiqO+l5r72Lt3L3ny5MnoWJIkKYdxmQJJkpRtPfvss+zZs4d33nknWSH2sKpVq3LnnXcmvT506BCPPfYYVapUISoqiooVK/Lggw8SGxub7LyKFStyySWXMGXKFJo0aULu3LmpV69e0hquY8eOpV69ekRHR9O4cWPmzJmT7Pwbb7yRvHnzsnbtWi655BLy5s1LmTJlePXVVwFYsGAB5513Hnny5KFChQqMHj062fn/XDO2TZs2fPnll6xZsybp69eHZ/wdbvvRRx8xaNAgypQpQ758+bjiiivYuXMnsbGx3HXXXRQvXpy8efNy0003pbhfgJEjR9K4cWNy585N4cKFufrqq1m3bl2yNm3atKFu3bosWrSIc889l5iYGMqUKcOzzz6bLPvh2Yk33XRTUt7hw4cf46cIa9as4bbbbqNGjRrkzp2bIkWKcOWVV7J69epk7YYPH04gEGDatGn079+fYsWKkSdPHi677DI2b96crG0wGOTxxx+nbNmyxMTEcO655/L7778fM0N6LF68mNy5c6eYPfvTTz8RHh7O/fffn3Ts8Jj65ptvaNiwIdHR0dSuXZuxY8em6HflypVceeWVFC5cmJiYGM4888yj/lHh5Zdfpk6dOsTExFCoUCGaNGmSbCzdeOONSePkSAMHDiQQCCQ7dnht11GjRlGnTh2ioqKYOHEiAH/99Rc9evSgRIkSREVFUadOHd599900fVajRo2iRo0aSb8zU6dOTXpv8uTJBAIBxo0bl+K80aNHEwgEmD59epqu90//XDP28GewaNEiunXrRqFChTjrrLOAk//9lyRJOZvFWEmSlG19/vnnVK5cmZYtW6aqfa9evRgwYABnnHEGgwcPpnXr1jz11FNHXVdy+fLldOvWjY4dO/LUU0+xfft2OnbsyKhRo7j77ru57rrrGDRoECtWrKBr164kJCQkOz8+Pp4OHTpQrlw5nn32WSpWrEjfvn0ZPnw47du3p0mTJjzzzDPky5eP7t27s2rVqmPmfuihh2jYsCFFixbl/fff5/3330+xfuxTTz3F119/zb///W969OjB2LFjueWWW+jRowd//PEHAwcO5PLLL2f48OE888wzyc594okn6N69O9WqVeOFF17grrvu4rvvvuOcc85hx44dydpu376d9u3b06BBA55//nlq1qzJ/fffz4QJEwCoVasWjz76KAB9+vRJynvOOecc8/5+++03fv75Z66++mqGDBnCLbfcwnfffUebNm3Yt29fivZ33HEH8+bN45FHHuHWW2/l888/T/GQqAEDBvDwww/ToEED/vvf/1K5cmUuuOAC9u7de8wc/3TgwAG2bNmSYjt48GDSvT722GO8//77fPbZZ0Di7Mobb7yRmjVrJn0Ohy1btoyrrrqKDh068NRTTxEREcGVV17JpEmTktr8/ffftGzZkq+//prbbruNJ554ggMHDnDppZcmK1a+9dZb9OvXj9q1a/Piiy8yaNAgGjZsyK+//prq+/un77//nrvvvpurrrqKl156iYoVK/L3339z5pln8u2339K3b19eeuklqlatSs+ePVO9hvEPP/zAXXfdxXXXXcejjz7K1q1bad++PQsXLgQSi/zlypVj1KhRKc4dNWoUVapUoUWLFie8zu7du1P8rP75e/lPV155Jfv27ePJJ5+kd+/eScdP9vdfkiTlYEFJkqRsaOfOnUEg2KlTp1S1nzt3bhAI9urVK9nxe++9NwgEv//++6RjFSpUCALBn3/+OenY119/HQSCuXPnDq5Zsybp+BtvvBEEgpMnT046dsMNNwSB4JNPPpl0bPv27cHcuXMHA4FA8H//+1/S8SVLlgSB4COPPJJ0bPLkySn6vPjii4MVKlRIcV+H29atWzd48ODBpOPXXHNNMBAIBDt06JCsfYsWLZL1s3r16mB4eHjwiSeeSNZuwYIFwYiIiGTHW7duHQSCI0aMSDoWGxsbLFmyZLBLly5Jx3777bcgEBw2bFiKvEezb9++FMemT5+e4lrDhg0LAsG2bdsGExISko7ffffdwfDw8OCOHTuCwWAwuGnTpmCuXLmCF198cbJ2Dz74YBAI3nDDDSfMBBxz++CDD5LaxcfHB88666xgiRIlglu2bAnefvvtwYiIiOBvv/2WrL/DY2rMmDFJx3bu3BksVapUsFGjRknH7rrrriAQ/PHHH5OO7d69O1ipUqVgxYoVg/Hx8cFgMBjs1KlTsE6dOse9hxtuuOGoY+aRRx4J/vN/E4BgWFhY8Pfff092vGfPnsFSpUoFt2zZkuz41VdfHSxQoMBRf3b/7BcIzpw5M+nYmjVrgtHR0cHLLrss6dgDDzwQjIqKSvoZBoOJP8eIiIhkvxtHc/h34GjbqlWrknIc2c/hz+Caa65J0d/J/v5LkqSczZmxkiQpW9q1axcA+fLlS1X7r776CoD+/fsnO37PPfcApPgaeO3atZPNxmvevDkA5513HuXLl09xfOXKlSmu2atXr6T9ggULUqNGDfLkyUPXrl2TjteoUYOCBQse9fy06N69O5GRkclyBYNBevTokaxd8+bNWbduHYcOHQISv3KdkJBA165dk80oLFmyJNWqVWPy5MnJzs+bN2+ydVRz5cpFs2bNTip/7ty5k/bj4uLYunUrVatWpWDBgsyePTtF+z59+iT7mv3ZZ59NfHw8a9asAeDbb7/l4MGD3HHHHcnapfXhZ506dWLSpEkptnPPPTepTVhYGMOHD2fPnj106NCB1157jQceeIAmTZqk6K906dJcdtllSa/z589P9+7dmTNnDhs3bgQSx2mzZs2SvjIPiZ95nz59WL16NYsWLQISx9Off/7Jb7/9lqZ7Op7WrVtTu3btpNfBYJAxY8bQsWNHgsFgsvFx4YUXsnPnzqP+fP6pRYsWNG7cOOl1+fLl6dSpE19//TXx8fFA4viNjY3lk08+SWr34YcfcujQoVSv2ztgwIAUP6uSJUse95xbbrnlqMcz4vdfkiTlTDm+GDt16lQ6duxI6dKlCQQCjB8/Ps19fP3115x55pnky5ePYsWK0aVLlxRrmEmSpKyVP39+IPGryamxZs0awsLCqFq1arLjJUuWpGDBgkmFvMOOLLgAFChQAIBy5cod9fj27duTHY+OjqZYsWIp2pYtWzbFep0FChRIcX5apSVvQkICO3fuBBK/Oh8MBqlWrRrFihVLti1evJhNmzYlO/9o+QsVKnRS+ffv38+AAQMoV64cUVFRFC1alGLFirFjx46knMe710KFCgH/9zM4/LOsVq1asnbFihVLapsaZcuWpW3btim2EiVKJGtXpUoVBg4cyG+//UadOnV4+OGHj9pf1apVU3x21atXB0j6b8s1a9ZQo0aNFOfWqlUr2b3df//95M2bl2bNmlGtWjVuv/12pk2blup7O5pKlSole71582Z27NjBm2++mWJs3HTTTQApxsfR/PPnAIn3vW/fvqS1fmvWrEnTpk2TLVUwatQozjzzzBS/s8dSr169FD+rEz2465/3fNjJ/v5LkqScKyLUAUJt7969NGjQgB49enD55Zen+fxVq1bRqVMn+vfvz6hRo9i5cyd33303l19+eapmAkiSpMyRP39+SpcunbTuZGr9sxh2LOHh4Wk6HgwGM/T8tErv9RISEggEAkyYMOGobfPmzZum/tLjjjvuYNiwYdx11120aNGCAgUKEAgEuPrqq4+6FmdmfYYn45tvvgFg/fr1bN269YQzMk9WrVq1WLp0KV988QUTJ05kzJgxvPbaawwYMIBBgwYBxx7rh2ej/tORM5SBpM/+uuuu44YbbjjqOfXr10/vLaTQvXt37rzzTv78809iY2P55ZdfeOWVVzKs/6P55z0fltW/v5IkKfvI8cXYDh060KFDh2O+Hxsby0MPPcQHH3zAjh07qFu3Ls888wxt2rQBYNasWcTHx/P4448TFpY40fjee++lU6dOxMXFJfs6oCRJylqXXHIJb775JtOnTz/hA34qVKhAQkICy5YtS5plCIkPTNqxYwcVKlTI7LgnJbVF5LSqUqUKwWCQSpUqJc3SPFlpzfrJJ59www038PzzzycdO3DgQIqHh6XW4Z/lsmXLqFy5ctLxzZs3Z8oMxtdff51JkybxxBNP8NRTT3HzzTfz6aefpmi3fPlygsFgss/njz/+AKBixYpJ2ZcuXZri3CVLliS9f1iePHm46qqruOqqqzh48CCXX345TzzxBA888ADR0dEUKlToqJ/hP2eBH0uxYsXIly8f8fHxtG3bNlXnHM2yZctSHPvjjz+IiYlJNnv86quvpn///nzwwQfs37+fyMhIrrrqqnRfV5IkKRRy/DIFJ9K3b1+mT5/O//73P+bPn8+VV15J+/btk/6jsXHjxoSFhTFs2DDi4+PZuXMn77//Pm3btrUQK0lSiP3rX/8iT5489OrVi7///jvF+ytWrOCll14C4KKLLgJI8QT4F154AYCLL744c8OepDx58hz1K/sn6/LLLyc8PJxBgwalmN0XDAbZunVrmvvMkycPQKqLqeHh4Smu/fLLLx9zBueJHP7vtJdffjlZv//82WeEVatWcd9999GlSxcefPBBnnvuOT777DNGjBiRou369esZN25c0utdu3YxYsQIGjZsmDST9qKLLmLGjBlMnz49qd3evXt58803qVixYtKarv/8ueTKlYvatWsTDAaJi4sDEgvtO3fuZP78+UntNmzYkCzD8YSHh9OlSxfGjBlz1Bnoh5cYOJHp06cn+0bZunXr+PTTT7nggguSzTQtWrQoHTp0YOTIkYwaNYr27dtTtGjRVF1DkiTpVJHjZ8Yez9q1axk2bBhr166ldOnSQOKs14kTJzJs2DCefPJJKlWqxDfffEPXrl25+eabiY+Pp0WLFkkPAZEkSaFTpUoVRo8ezVVXXUWtWrXo3r07devW5eDBg/z88898/PHH3HjjjQA0aNCAG264gTfffJMdO3bQunVrZsyYwXvvvUfnzp2TPZTpVNS4cWM+/PBD+vfvT9OmTcmbNy8dO3Y86X6rVKnC448/zgMPPMDq1avp3Lkz+fLlY9WqVYwbN44+ffpw7733prnPggUL8vrrr5MvXz7y5MlD8+bNj7k+5yWXXML7779PgQIFqF27NtOnT+fbb7+lSJEi6bqnYsWKce+99/LUU09xySWXcNFFFzFnzhwmTJiQpuLeH3/8wciRI1McL1GiBO3atUt6QFru3LkZOnQoADfffDNjxozhzjvvpG3btkn/jQmJ66T27NmT3377jRIlSvDuu+/y999/M2zYsKQ2//73v/nggw/o0KED/fr1o3Dhwrz33nusWrWKMWPGJH1T64ILLqBkyZK0atWKEiVKsHjxYl555RUuvvjipIfaXX311dx///1cdtll9OvXj3379jF06FCqV6+e6uW2nn76aSZPnkzz5s3p3bs3tWvXZtu2bcyePZtvv/2Wbdu2nbCPunXrcuGFF9KvXz+ioqJ47bXXAJKWUzhS9+7dueKKKwB47LHHUpVRkiTpVGIx9jgWLFhAfHx8iq/kxcbGJv3H/8aNG+nduzc33HAD11xzDbt372bAgAFcccUVTJo0KdO+MihJklLn0ksvZf78+fz3v//l008/ZejQoURFRVG/fn2ef/55evfundT27bffpnLlygwfPpxx48ZRsmRJHnjgAR555JEQ3kHq3HbbbcydO5dhw4YxePBgKlSokCHFWEgsAFavXp3BgwcnFcjKlSvHBRdcwKWXXprm/iIjI3nvvfd44IEHuOWWWzh06BDDhg07ZjH2pZdeIjw8nFGjRnHgwAFatWrFt99+y4UXXpjue3r88ceJjo7m9ddfTyomfvPNN2maAT1p0iQmTZqU4njr1q1p164dL7/8MlOmTGHMmDHJvm7/zjvvULduXXr37s2XX36ZdLxatWq8/PLL3HfffSxdupRKlSrx4YcfJrvPEiVK8PPPP3P//ffz8ssvc+DAAerXr8/nn3+eLPvNN9/MqFGjeOGFF9izZw9ly5alX79+/Oc//0lqU6RIEcaNG0f//v3517/+RaVKlXjqqadYtmxZqouxJUqUYMaMGTz66KOMHTuW1157jSJFilCnTh2eeeaZVPXRunVrWrRowaBBg1i7di21a9dm+PDhR11vtmPHjhQqVIiEhIR0jT1JkqRQCwRdTT5JIBBg3LhxdO7cGYAPP/yQa6+9lt9//z3FYvx58+alZMmSPPzww0ycOJHffvst6b0///yT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t27dOuXt7a3279+vlFLqzz//VBqNJte5wvLly9UzzzyjOnbsaOoLer3eLPGKvLV582ZVsWJFdfToUdP3VlZWavHixaY2O3bsUG3atFE9e/aU/lAEPP3000qj0aj+/fursLCwe7YnJCSo7du3q06dOqmaNWuqjIwMpZQcLyxN9u8zKChIbdq0SR05ckSFh4crpZSKjY1VY8aMUY0aNVLjx4+X3NO/IEMnCyCVNVg5+2v16tWZMmUKPj4+rF+/nv379wN36sjGxMRw/fp16tSpw5EjR7C2tkav18vIWAtla2vLt99+y/PPP8/hw4c5duwYGo0m1y2Izs7OJCUlsWvXLtNIKGG5SpcuzciRI3F3d+fbb7+lUqVKfP3117i7u1OpUiXc3d0ZO3YscXFxUp7AAuX8nWY/HjRoELVq1eK9994jMzOTli1bMm3aNH744QdatmxJ165dOXToEHXq1DFT1OJJmzBhAitWrDBNuOHm5oa9vT2urq7s2LGDwMBAANPdNNnHjK5du/LJJ5/w0UcfsXbtWm7duiX7CQtVvnx5JkyYgF6v5+jRo4CxP2T/vsPCwliyZAnW1tacOHHCdD4po6QLv+y/9+yv165do06dOjRt2pQVK1YwZMgQvvvuO1555RXTCMju3bszatQoNm7caOoLUiPUMtw98datW7coXbo09evXZ+nSpfTr149Zs2YxYMAAkpKSOHjwIG3atGH69OmsWrVK+oMFyj4OpKenk5GRQd26dfnoo4+4cuUKn376KRcuXADu7EPOnDnDd999h6urq2nUfGZmphwvLIjKuktqxYoVdOnShTfeeIOhQ4cyfPhwTp8+TfHixfnggw9o3bo1O3fuZPTo0XL++E+ZKwss7i/nJwqxsbEqOjra9P2aNWtUvXr11PPPP68OHz6c63mJiYmmx/IppWXJ/kQqISFBRUdHm76Pjo5WnTp1Up6eniooKEgplbv/JCcn53+wIs9l//4vXryoDhw4oKKiokx/8+np6apHjx7q1VdfNbUfOXKkWrhwobp165Y5whX5ZNeuXSogICDX73nZsmWqQYMG6siRI+YLTOSbW7dumUamnD592rR+xYoVqkyZMmrEiBEqMDDwgc9ft26dqlSpkoqKisrzWEXee9AIlZs3b6qxY8cqKysr9d13392zPSwszPTc7P4kCreco5+zrysWLlyo+vfv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nuv5ch6ZN2SMcT5IT083Des/deoULVu25IsvviAuLo6jR4+SmJhoajtixAi+/PJLJk+ezObNm80VsshD6enpplvKzp49S8mSJXn99depWLEiq1evJjU1FTDeAtC5c2fGjx/P7du3GTx4MJmZmQByW6EF6devH2PGjEGj0Zh+v46OjrRq1YotW7YQHh6ORqNBo9Gg0+nw8PDg5s2bODo6AnKriKXIWcImp7NnzzJr1ix27tzJtWvXgDu/83bt2vHWW29x5swZrl+/zo4dO6hSpUq+xSzynlLK9PueM2cOP/74I/b29owZM4Yvv/wSgGHDhvHiiy+SkJBAgwYNaNKkCYGBgbz99ttoNBqUUnJroYVQOUoTpKSk4OHhQbFixQgMDOTcuXOmdo0bN+add96hatWqjB49mj179uR6HTluFH6dO3dm0aJFWFlZsWLFClJTU3FxcaFly5a4uLiwbt06atWqxdChQwHj77xp06bodDoqV65s5ujFk7Z161amTp0KwBtvvMHYsWPx8/Pjzz//RK/X07JlSxISEkx/++7u7rz55psMHz6csmXLml5Hri8sW2xsLLdu3WLz5s0MGzaML7/8kuHDhwOwadMm5s2bR2RkJF5eXqbzB+kThd+CBQt48cUXiYiIQKvVkpiYyKhRo5gxYwYBAQGmduXLl2f58uVERUUxderUXLkoOW/II+bNBVu+zZs3q169eimllBo5cqRq2LCh6RbSCRMmKJ1Op+bNm2f6tCLb8uXL5RYyC3Tx4kXVr18/FR8fr5YuXao0Go06e/asSk9PVwsXLlR169ZVTz31VK7+YDAY1NatW+XWAAuU89PmLVu2qKeeekrFxsYqpZT666+/VJMmTdTo0aNNZSqUUmrYsGHqmWeeUSkpKfJptYXI/pT6+vXr6u+//1bLli1Tt27dMm1fvHixKlGihHrttdfUpUuX7vv8u48hwrJ89NFHysPDQy1atEj99NNP6vnnn1fFihXLdTfFxYsX1bJly9TChQtNIxhkJIPlWL16tTp8+LBSSqnRo0erQYMGKaWMt522adNGtWvXTu3evTvXc/bs2aMmTpwo/cDC3D1avmLFiqpv374qNTXVtH3EiBGqU6dOKjw8XBkMBtW7d+9co6RldLTlSEpKUq+++qpq0KCBat++vXJ2dlZnz541bT979qyqVauWqlWrljpy5Ig6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",
      "text/plain": [
       "<Figure size 1400x700 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "{'chart_generator': {'messages': [AIMessage(content='The data has been successfully extracted from the PDF. Here is the extracted data according to the specified schema:\\n\\n- **Firm**: \\n  - Vista Equity Partners\\n  - ABRY Partners\\n  - Advent International\\n  - Thoma Bravo\\n  - Platinum Equity\\n  - Spark Management Partners\\n  - New Enterprise Associates\\n  - Technology Crossover Ventures\\n  - EnCap Investments\\n  - Hellman & Friedman\\n\\n- **Number of Funds**: \\n  - 7\\n  - 6\\n  - 5\\n  - 5\\n  - 4\\n  - 6\\n  - 4\\n  - 5\\n  - 4\\n  - 5\\n\\n- **Commitment**: \\n  - $185,000,000\\n  - $145,000,000\\n  - $145,000,000\\n  - $90,000,000\\n  - $112,500,000\\n  - $93,750,000\\n  - $95,000,000\\n  - $104,500,000\\n  - $120,000,000\\n  - $100,463,972\\n\\n- **Percent of Total Comm**: \\n  - 3.6%\\n  - 2.8%\\n  - 2.8%\\n  - 1.8%\\n  - 2.2%\\n  - 1.8%\\n  - 1.9%\\n  - 2.0%\\n  - 2.3%\\n  - 2.0%\\n\\n- **Exposure (FMV + Unfunded)**: \\n  - $192,356,158\\n  - $146,947,169\\n  - $132,320,692\\n  - $119,164,173\\n  - $105,732,861\\n  - $104,048,457\\n  - $103,565,654\\n  - $100,481,558\\n  - $97,535,330\\n  - $91,816,195\\n\\n- **Percent of Total Exposure**: \\n  - 5.4%\\n  - 4.2%\\n  - 3.7%\\n  - 3.4%\\n  - 3.0%\\n  - 2.9%\\n  - 2.9%\\n  - 2.8%\\n  - 2.8%\\n  - 2.6%\\n\\n- **TVPI**: \\n  - 2.07x\\n  - 1.25x\\n  - 1.64x\\n  - 1.85x\\n  - 1.64x\\n  - 2.42x\\n  - 1.60x\\n  - 1.95x\\n  - 1.11x\\n  - 2.09x\\n\\n- **Net IRR**: \\n  - 22.2%\\n  - 9.6%\\n  - 16.0%\\n  - 24.7%\\n  - 28.5%\\n  - 27.4%\\n  - 15.7%\\n  - 14.9%\\n  - 4.5%\\n  - 20.3%\\n\\nI will now proceed to create the line graph based on this data.', additional_kwargs={'tool_calls': [{'id': 'call_OjsEUqdNmghf64P3l8VVegM4', 'function': {'arguments': '{\"code\":\"import matplotlib.pyplot as plt\\\\nimport pandas as pd\\\\n\\\\n# Data\\\\nfirms = [\\\\n    \\\\\"Vista Equity Partners\\\\\", \\\\\"ABRY Partners\\\\\", \\\\\"Advent International\\\\\", \\\\\"Thoma Bravo\\\\\", \\\\\"Platinum Equity\\\\\", \\\\n    \\\\\"Spark Management Partners\\\\\", \\\\\"New Enterprise Associates\\\\\", \\\\\"Technology Crossover Ventures\\\\\", \\\\n    \\\\\"EnCap Investments\\\\\", \\\\\"Hellman & Friedman\\\\\"\\\\n]\\\\nnumber_of_funds = [7, 6, 5, 5, 4, 6, 4, 5, 4, 5]\\\\ncommitment = [185000000, 145000000, 145000000, 90000000, 112500000, 93750000, 95000000, 104500000, 120000000, 100463972]\\\\npercent_of_total_comm = [3.6, 2.8, 2.8, 1.8, 2.2, 1.8, 1.9, 2.0, 2.3, 2.0]\\\\nexposure = [192356158, 146947169, 132320692, 119164173, 105732861, 104048457, 103565654, 100481558, 97535330, 91816195]\\\\npercent_of_total_exposure = [5.4, 4.2, 3.7, 3.4, 3.0, 2.9, 2.9, 2.8, 2.8, 2.6]\\\\ntvpi = [2.07, 1.25, 1.64, 1.85, 1.64, 2.42, 1.60, 1.95, 1.11, 2.09]\\\\nnet_irr = [22.2, 9.6, 16.0, 24.7, 28.5, 27.4, 15.7, 14.9, 4.5, 20.3]\\\\n\\\\n# Create DataFrame\\\\ndata = {\\\\n    \\\\\"Firm\\\\\": firms,\\\\n    \\\\\"Number of Funds\\\\\": number_of_funds,\\\\n    \\\\\"Commitment\\\\\": commitment,\\\\n    \\\\\"Percent of Total Comm\\\\\": percent_of_total_comm,\\\\n    \\\\\"Exposure\\\\\": exposure,\\\\n    \\\\\"Percent of Total Exposure\\\\\": percent_of_total_exposure,\\\\n    \\\\\"TVPI\\\\\": tvpi,\\\\n    \\\\\"Net IRR\\\\\": net_irr\\\\n}\\\\ndf = pd.DataFrame(data)\\\\n\\\\n# Plot\\\\nplt.figure(figsize=(14, 7))\\\\nplt.plot(df[\\\\\"Firm\\\\\"], df[\\\\\"Commitment\\\\\"], marker=\\'o\\', label=\\'Commitment\\')\\\\nplt.plot(df[\\\\\"Firm\\\\\"], df[\\\\\"Exposure\\\\\"], marker=\\'s\\', label=\\'Exposure\\')\\\\nplt.xlabel(\\'Firm\\')\\\\nplt.ylabel(\\'Amount in Millions\\')\\\\nplt.title(\\'Commitment and Exposure by Firm\\')\\\\nplt.legend()\\\\nplt.grid(True)\\\\nplt.xticks(rotation=45, ha=\\'right\\')\\\\nplt.tight_layout()\\\\nplt.show()\"}', 'name': 'python_repl'}, 'type': 'function'}], 'refusal': None}, response_metadata={'token_usage': {'completion_tokens': 1369, 'prompt_tokens': 5258, 'total_tokens': 6627, 'completion_tokens_details': {'reasoning_tokens': 0}}, 'model_name': 'gpt-4o-2024-05-13', 'system_fingerprint': 'fp_e375328146', 'finish_reason': 'tool_calls', 'logprobs': None}, name='chart_generator', id='run-166bdbff-132a-4fbc-b03e-5a6c06fce49b-0', tool_calls=[{'name': 'python_repl', 'args': {'code': 'import matplotlib.pyplot as plt\\nimport pandas as pd\\n\\n# Data\\nfirms = [\\n    \"Vista Equity Partners\", \"ABRY Partners\", \"Advent International\", \"Thoma Bravo\", \"Platinum Equity\", \\n    \"Spark Management Partners\", \"New Enterprise Associates\", \"Technology Crossover Ventures\", \\n    \"EnCap Investments\", \"Hellman & Friedman\"\\n]\\nnumber_of_funds = [7, 6, 5, 5, 4, 6, 4, 5, 4, 5]\\ncommitment = [185000000, 145000000, 145000000, 90000000, 112500000, 93750000, 95000000, 104500000, 120000000, 100463972]\\npercent_of_total_comm = [3.6, 2.8, 2.8, 1.8, 2.2, 1.8, 1.9, 2.0, 2.3, 2.0]\\nexposure = [192356158, 146947169, 132320692, 119164173, 105732861, 104048457, 103565654, 100481558, 97535330, 91816195]\\npercent_of_total_exposure = [5.4, 4.2, 3.7, 3.4, 3.0, 2.9, 2.9, 2.8, 2.8, 2.6]\\ntvpi = [2.07, 1.25, 1.64, 1.85, 1.64, 2.42, 1.60, 1.95, 1.11, 2.09]\\nnet_irr = [22.2, 9.6, 16.0, 24.7, 28.5, 27.4, 15.7, 14.9, 4.5, 20.3]\\n\\n# Create DataFrame\\ndata = {\\n    \"Firm\": firms,\\n    \"Number of Funds\": number_of_funds,\\n    \"Commitment\": commitment,\\n    \"Percent of Total Comm\": percent_of_total_comm,\\n    \"Exposure\": exposure,\\n    \"Percent of Total Exposure\": percent_of_total_exposure,\\n    \"TVPI\": tvpi,\\n    \"Net IRR\": net_irr\\n}\\ndf = pd.DataFrame(data)\\n\\n# Plot\\nplt.figure(figsize=(14, 7))\\nplt.plot(df[\"Firm\"], df[\"Commitment\"], marker=\\'o\\', label=\\'Commitment\\')\\nplt.plot(df[\"Firm\"], df[\"Exposure\"], marker=\\'s\\', label=\\'Exposure\\')\\nplt.xlabel(\\'Firm\\')\\nplt.ylabel(\\'Amount in Millions\\')\\nplt.title(\\'Commitment and Exposure by Firm\\')\\nplt.legend()\\nplt.grid(True)\\nplt.xticks(rotation=45, ha=\\'right\\')\\nplt.tight_layout()\\nplt.show()'}, 'id': 'call_OjsEUqdNmghf64P3l8VVegM4', 'type': 'tool_call'}], usage_metadata={'input_tokens': 5258, 'output_tokens': 1369, 'total_tokens': 6627})], 'sender': 'chart_generator'}}\n",
      "----\n",
      "{'call_tool': {'messages': [ToolMessage(content='Successfully executed:\\n```python\\nimport matplotlib.pyplot as plt\\nimport pandas as pd\\n\\n# Data\\nfirms = [\\n    \"Vista Equity Partners\", \"ABRY Partners\", \"Advent International\", \"Thoma Bravo\", \"Platinum Equity\", \\n    \"Spark Management Partners\", \"New Enterprise Associates\", \"Technology Crossover Ventures\", \\n    \"EnCap Investments\", \"Hellman & Friedman\"\\n]\\nnumber_of_funds = [7, 6, 5, 5, 4, 6, 4, 5, 4, 5]\\ncommitment = [185000000, 145000000, 145000000, 90000000, 112500000, 93750000, 95000000, 104500000, 120000000, 100463972]\\npercent_of_total_comm = [3.6, 2.8, 2.8, 1.8, 2.2, 1.8, 1.9, 2.0, 2.3, 2.0]\\nexposure = [192356158, 146947169, 132320692, 119164173, 105732861, 104048457, 103565654, 100481558, 97535330, 91816195]\\npercent_of_total_exposure = [5.4, 4.2, 3.7, 3.4, 3.0, 2.9, 2.9, 2.8, 2.8, 2.6]\\ntvpi = [2.07, 1.25, 1.64, 1.85, 1.64, 2.42, 1.60, 1.95, 1.11, 2.09]\\nnet_irr = [22.2, 9.6, 16.0, 24.7, 28.5, 27.4, 15.7, 14.9, 4.5, 20.3]\\n\\n# Create DataFrame\\ndata = {\\n    \"Firm\": firms,\\n    \"Number of Funds\": number_of_funds,\\n    \"Commitment\": commitment,\\n    \"Percent of Total Comm\": percent_of_total_comm,\\n    \"Exposure\": exposure,\\n    \"Percent of Total Exposure\": percent_of_total_exposure,\\n    \"TVPI\": tvpi,\\n    \"Net IRR\": net_irr\\n}\\ndf = pd.DataFrame(data)\\n\\n# Plot\\nplt.figure(figsize=(14, 7))\\nplt.plot(df[\"Firm\"], df[\"Commitment\"], marker=\\'o\\', label=\\'Commitment\\')\\nplt.plot(df[\"Firm\"], df[\"Exposure\"], marker=\\'s\\', label=\\'Exposure\\')\\nplt.xlabel(\\'Firm\\')\\nplt.ylabel(\\'Amount in Millions\\')\\nplt.title(\\'Commitment and Exposure by Firm\\')\\nplt.legend()\\nplt.grid(True)\\nplt.xticks(rotation=45, ha=\\'right\\')\\nplt.tight_layout()\\nplt.show()\\n```\\nStdout: \\n\\nIf you have completed all tasks, respond with FINAL ANSWER.', name='python_repl', tool_call_id='call_OjsEUqdNmghf64P3l8VVegM4')]}}\n",
      "----\n",
      "{'chart_generator': {'messages': [AIMessage(content='The line graph showcasing the Commitment and Exposure by Firm has been successfully generated.\\n\\nFINAL ANSWER\\n\\nHere is the line graph displaying the Commitment and Exposure by Firm:\\n\\n![Line Graph](attachment:image.png)\\n\\nThis graph visualizes the Commitment and Exposure amounts in millions of dollars for each firm, providing a clear comparison.', additional_kwargs={'refusal': None}, response_metadata={'token_usage': {'completion_tokens': 63, 'prompt_tokens': 7291, 'total_tokens': 7354, 'completion_tokens_details': {'reasoning_tokens': 0}}, 'model_name': 'gpt-4o-2024-05-13', 'system_fingerprint': 'fp_e375328146', 'finish_reason': 'stop', 'logprobs': None}, name='chart_generator', id='run-1d6e7ea1-b17a-47b1-accc-44fdb91c45ef-0', usage_metadata={'input_tokens': 7291, 'output_tokens': 63, 'total_tokens': 7354})], 'sender': 'chart_generator'}}\n",
      "----\n"
     ]
    }
   ],
   "source": [
    "events = graph.stream(\n",
    "    {\n",
    "        \"messages\": [\n",
    "            HumanMessage(\n",
    "                content=f\"Extract data under the schema {json.dumps(SCHEMA)} from the PDF under the path {PDF_FILE_PATH},\" \n",
    "                f\" then pass the schema and pdf path as inputs to the chart_generator agent to draw a line graph of it.\"\n",
    "                \" Once you code it up, finish.\"\n",
    "            )\n",
    "        ],\n",
    "    },\n",
    "    # Maximum number of steps to take in the graph\n",
    "    {\"recursion_limit\": 150},\n",
    ")\n",
    "for s in events:\n",
    "    print(s)\n",
    "    print(\"----\")"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.12.3"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
